// miniprogram/pages/address/receiveAddr.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    buttons: [
      {
          type: 'primary',
          className: '',
          text: '确定',
          value: 1
      }
    ],
    show: false,
    tel: '',
    name: '',
    address: '',
    addressDetial:'',
    id: undefined,
    listData: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.findList();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.findList();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  // 新增或编辑地址
  openAddrModel: function(e) {
    console.log('编辑地址',e);
    const type = e.currentTarget.dataset.type;
    const item = e.currentTarget.dataset.item;
    if(type === 'add') {
      this.setData({
        show: true,
        tel: '',
        name: '',
        address: '',
        addressDetial:'',
        id: undefined
      });
    }else {
      this.setData({
        show: true,
        tel: item.tel,
        name: item.name,
        address: item.address,
        addressDetial: item.addressDetial,
        id: item._id
      });
    }
    
  },
  // 保存地址
  saveAddr: function(e) {
    this.setData({
      show: false
    });
    // 请求后台保存数据
    console.log("保存数据", this.data);
    let param = {
      _id: this.data.id,
      tel: this.data.tel,
      name: this.data.name,
      address: this.data.address,
      addressDetail: this.data.addressDetial
    };
    wx.cloud.callFunction({
      // 需调用的云函数名
      name: 'addressApi',
      // 传给云函数的参数
      data: {
        method: "save",
        args: param
      },
      // 成功回调
      success: (res)=>{
        console.log("保存地址", res);
        wx.showToast({
          title: '保存成功',
          icon: 'success',
          duration: 1000
        });
        this.findList()
      }
    });
  },
  // 查询所有地址列表
  findList: function() {
    wx.cloud.callFunction({
      // 需调用的云函数名
      name: 'addressApi',
      // 传给云函数的参数
      data: {
        method: "queryList",
        args: {}
      },
      // 成功回调
      success: (res)=>{
        console.log("地址列表", res);
        this.setData({
          listData: res.result.rstData.data
        });
      }
    });
  },
  bindInputValue(e) {
    const file = e.currentTarget.dataset.file;
    if(file === "addressDetial") {
      this.setData({
        addressDetial: e.detail.value
      });
    }else if(file === "name") {
      this.setData({
        name: e.detail.value
      });
    }else if(file === "tel") {
      this.setData({
        tel: e.detail.value
      });
    }else if(file === "address") {
      this.setData({
        address: e.detail.value
      });
    }
    console.log("输入内容", e);
  }
})